<?php

/**
 * monitoreo form.
 *
 * @package    plagas
 * @subpackage form
 * @author     Your name here
 * @version    SVN: $Id: sfDoctrineFormTemplate.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class monitoreoForm extends BasemonitoreoForm
{
  public function configure()
  {
      unset($this['realizado'],
            $this['estadofenologico_id']);
      
        $widthFechas = '60px';
        // widgets
        $this->widgetSchema['programado'] = new sfWidgetFormInputHidden();
        $this->widgetSchema['obs'] = new sfWidgetFormTextarea();
        $this->widgetSchema['obs']->setLabel('Observaciones');
        $this->widgetSchema['establecimiento_id'] = new sfWidgetFormDoctrineChoice(array(
            'model'     => 'establecimiento',
            'add_empty' => 'Seleccione un establecimiento',
            'table_method'=> 'getEstablecimientos'));
        $this->widgetSchema['lote_id'] = new sfWidgetFormDoctrineDependentSelect(array(
            'model'     => 'lote',
            'depends'   => 'establecimiento_id',
            'add_empty' => 'Seleccione un lote',
            'ref_method'   => 'getEstablecimientoId',));
        $this->widgetSchema['campana_id'] = new sfWidgetFormDoctrineDependentSelect(array(
            'model'     => 'campana',
            'depends'   => 'lote_id',
            'add_empty' => 'Seleccione una campaña',
            'ref_method'   => 'getLoteId',));
        $this->widgetSchema['campana_id']->setLabel('Campaña');
        $this->widgetSchema->moveField('campana_id', 'after', 'lote_id');
        $this->widgetSchema->moveField('obs', 'after', 'campana_id');

        // validators
        $this->validatorSchema['establecimiento_id'] = new sfValidatorDoctrineChoice(array(
            'model' => 'establecimiento'));
        $this->validatorSchema['lote_id'] = new sfValidatorDoctrineChoice(array(
            'model' => 'lote'));
        $this->validatorSchema['obs'] = new sfValidatorString(array('max_length' => 200, 'required' => false));



        if($this->getObject()->isNew() || $this->getObject()->getRealizado()== null)
        {
            $this->widgetSchema['programado'] = new sfWidgetFormJQueryDate(array(
            'image'    => '/images/icons/calendar_view_month.gif',
            'culture'  => 'es'));
            $this->widgetSchema['programado']->setLabel('Programado para');
            $this->widgetSchema['programado']->setAttribute('style', 'width:'.$widthFechas);

            $this->validatorSchema['programado'] = new sfValidatorDateTime(array('required' => false));
        }
  }
}
